package com.relytosoft.mizar.analyze.handle.service;

import com.relytosoft.mizar.analyze.base.entity.pojo.base.BaseAlgoControlReq;
import com.relytosoft.mizar.analyze.base.entity.pojo.base.BaseAlgoDataReq;

import java.util.List;

/**
 * @author wss
 * @version 1.0
 * @date 2022/5/16 22:58
 */
public interface FaceListenerService<AlgoDataReq extends BaseAlgoDataReq, AlgoControlReq extends BaseAlgoControlReq> {

    /**
     * 处理人脸任务原始数据
     *
     * @param baseAlgoReq
     * @return
     */
    public Boolean handleRawData(AlgoDataReq baseAlgoReq);

    /**
     * 处理人脸任务io数据
     *
     * @param baseAlgoReq
     */
    public void handleIOData(AlgoDataReq baseAlgoReq);

    /**
     * 处理人脸任务业务数据
     *
     * @param baseAlgoReq
     */
    public void handleBusinessData(AlgoDataReq baseAlgoReq);

    /**
     * 处理人脸布控任务原始数据
     *
     * @param algoControlReqs
     * @return
     */
    public Boolean handleControlRawData(List<AlgoControlReq> algoControlReqs);

    /**
     * 处理人脸布控io数据
     *
     * @param algoControlReqs
     */
    public void handleControlIOData(List<AlgoControlReq> algoControlReqs);

    /**
     * 处理人脸布控业务数据
     *
     * @param algoControlReq
     */
    public void handleControlBusinessData(AlgoControlReq algoControlReq);

}
